name: Docker Image CI
on:
  push:
    branches: [ "main" ]
  workflow_dispatch:
jobs:
  build:
    runs-on: ubuntu-latest
    permissions: write-all
    steps:
    - uses: actions/checkout@v3
    - uses: docker/login-action@v2.1.0
      with:
          registry: ghcr.io
          username: ${{ github.repository_owner }}
          password: ${{ secrets.GITHUB_TOKEN }}
    - id: owner
      uses: ASzc/change-string-case-action@v5
      with:
          string: ${{ github.repository_owner }}
    - id: repo
      uses: ASzc/change-string-case-action@v5
      with:
          string: ${{ github.event.repository.name }}

    - uses: docker/setup-qemu-action@v2
    - uses: docker/setup-buildx-action@v2
    - uses: docker/build-push-action@v4
      with:
          context: .
          file: Dockerfile
          platforms: linux/amd64,linux/arm64
          push: true
          tags: |
            ghcr.io/${{ steps.owner.outputs.lowercase }}/${{ steps.repo.outputs.lowercase }}:latest
